<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .color {
            color:red;
        }
    </style>
        <!-- 开发环境版本，包含了有帮助的命令行警告 -->
        <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
    <!-- 模板内容 -->
    <!-- 
        在vue中有三种组件
        1全局组件
        1.1调用Vue.extend（）方法创建一个组件的构造器，该构造器有一个属性template（定义 组件要渲染的html）
        1.2使用Vue.component()方法注册组件，需要提供两个参数：组件标签的名称和组件的构造器，内部会调用组件构造器并船舰一个组件的实例
        1.3要将组件挂在到某个vue的实例下面
        2局部组件
            可以使用选项对象的cmponents属性实现局部的注册
        3模板组件
    
        注意：一个组件的data选项一定是一个函数，该函数会返回一个对象
 -->
    <div id="demo">
     <my-aaa></my-aaa>
    </div>

    <script>
       //局部组件
        var demo = new Vue({
            el:"#demo",
           components:{
               'my-aaa':{
                   data(){
                       return{
                           msg:'hello vue',
                       }
                   },
                   methods: {
                       change(){
                           this.msg='changed'
                       }
                   },
                   template:'<h1 @click="change">这是一个局部组件{{msg}}</h1>'
               }
           }
        })
    </script>
</body>
</html>